home *** CD-ROM | disk | FTP | other *** search
/ Maclife 35 / MACLIFE35.ISO.7z / MACLIFE35.ISO / Apple提供ファイル / MathLib v2 Folder.sea / MathLib v2 Folder / MathLib v2 Release Note < prev    next >
Text File  |  1995-02-07  |  3KB  |  55 lines

  1. MathLib v2
  2.  
  3. ・ What is MathLib v2?
  4.  
  5. MathLib v2 shared library is a performance enhanced version of MathLib found in the ROM of the first generation PowerPC equipped machines (referred to as ROM MathLib in this document).  The speed of computation of all functions especially the hyperbolic, trigonometric, power, exponential and logarithm functions have been substantially improved.  Support for long double (double-double) precision transcendental functions has also been added.
  6.  
  7. ・ Differences between ROM MathLib and MathLib v2
  8.  
  9. MathLib v2 and ROM MathLib are both designed to conform to the IEEE 754 Numerics standard requirements and recommendations.  They also deliver NCEG-FPCE recommended flags and floating-point exceptions.  MathLib v2 is faster and more compliant than its previous version.
  10.  
  11. The set and query functions in the header file <fenv.h> have been optimized and are much faster in MathLib v2.  They can still be used precisely as before and return the correct values.
  12.  
  13. The ROM MathLib and the MathLib v2 have identical numerical results in double precision.  A few non-compliant edge cases found in the ROM MathLib have been corrected in MathLib v2.  The double precision function sqrt is now fully IEEE-754 compliant and the 1-ulp rounding error on the neighborhood of powers of 2 has been remedied.
  14.  
  15. MathLib v2 has enhanced or added support for the following category of long double functions:
  16.  
  17. 。trigonometric and their inverses including atan2;
  18. 。exponentials;
  19. 。logarithms;
  20. 。power, sqrt, scalb, logb, abs and copysign;
  21. 。rounding functions.
  22.  
  23. MathLib v2 long double transcendental function edge cases may not follow the FPCE recommendations.
  24.  
  25. MathLib v2 has two new transfer functions: x80tod and dtox80.  They can be used to directly transform 68k 80bit extended data types to double and back for PowerPC based machines without using the functions x80told or ldtox80.
  26.  
  27. their prototypes are: 
  28.  
  29. double x80tod ( const extended80 *x80 );
  30. void dtox80 ( const double *x, extended80 *x80 );
  31.  
  32. where the extended80 typedef is defined in the header Types.h.
  33.  
  34. ・ Who should use MathLib v2?
  35.  
  36. Anyone who wants a better performance mathematical library and whose application may require to set or query the exception flags and rounding modes.
  37.  
  38. ・ How do you use the MathLib v2?
  39.  
  40. MathLib v2 is a shared library.  When dropped in an application folder, it will enhance the performance of applications found in that folder.  If MathLib v2 is copied into the extensions of the system folder, then it will benefit the entire system.
  41.  
  42. ・ Future directions
  43.  
  44. An even faster and FPCE and IEEE compliant MathLib v3 is being designed.  This approach will guarantee compatibility of floating-point results and exception flags with the MathLib v2 and will have more and more FPCE compliant support for long double functions.
  45.  
  46. ・ What is FPCE?
  47.  
  48. The PowerPC ROM MathLib and MathLib v2 follow the emerging floating-point standard  defined  by the  Floating-Point  C  Extensions  (FPCE) X3J11 Technical Report (January 6, 1994).  The purpose of  this  effort  is  to  provide portable numerical capabilities among diverse hardware platforms.
  49. _________________________________________________________________________
  50.  
  51. Correction to MathLib v2 dated January 23, 1995:
  52.  
  53. An edge case condition in the function tan was corrected.  Tan now correctly returns the value of tan(nケ/2) for n an integer.
  54.  
  55.